﻿using B.S.Medical.Api.Read.DTOS;
using B.S.Medical.Domain.Medical;
using B.S.Medical.ErrorCode;
using MediatR;
using System;

namespace B.S.Medical.Api.Read.Application.Command.DoctorSchedule
{
    /// <summary>
    /// 医生排班分页查询命令
    /// 
    /// </summary>
    public class GetDoctorScheduleCommand : IRequest<ApiPageing<DoctorScheduleDto>>
    {
        /// <summary>
        /// 当前页码（从1开始）
        /// </summary>
        public int PageIndex { get; set; } = 1;
        /// <summary>
        /// 每页数量
        /// </summary>
        public int PageSize { get; set; } = 10;
        /// <summary>
        /// 科室ID（可选，筛选指定科室）
        /// </summary>
        public int? DepartmentId { get; set; }
        /// <summary>
        /// 医生姓名（可选，模糊搜索）
        /// </summary>
        public string? DoctorName { get; set; }
        /// <summary>
        /// 周起始日期（可选，默认本周）
        /// </summary>
        public DateTime? WeekStart { get; set; }
        /// <summary>
        /// 周结束日期（可选，默认本周）
        /// </summary>
        public DateTime? WeekEnd { get; set; }
    }
}
